1. Field of the Invention
The present invention relates generally to a network failure location detecting apparatus and a network failure location detecting method that detect a failure occurring on a network, and, more particularly, to a network failure location detecting apparatus and a network failure location detecting method that detect a layer 2loop, which is a failure occurring in a relay apparatus constituting the network.
2. Description of the Related Art
A relay apparatus called a layer 2(L2) switch constituting network such as LAN is one of a relay apparatus of a network and has a function for determining a destination of a packet with data of a data link layer (second layer) in an OSI reference model to transfer the packet.
Protocols of the data link layer include MAC (media access control) in the Ethernet (registered trademark), etc. and a relay apparatus of the Ethernet (registered trademark) is also referred to as a switching hub, which refers to a MAC address to determine a destination of data.
Since protocols such as IP, TCP, and HTTP are located on a network layer (third layer) or later, the layer 2switch can transfer a packet if the protocol of the third layer or later is different.
In a network where a plurality of terminals is connected by the layer 2switch, a failure called a layer 2loop is generated in entire network by improper connection of cables or a failure of the layer 2switch. The generation of the layer 2loop causes a heavy load situation of terminals in entire network and makes the network communication impossible.
FIGS. 1 to 3 are diagrams for describing the network failure due to the layer 2loop. In FIG. 1, a network is configured by connecting a layer 2switch (hereinafter, “switch”) SW1 with subsequent switches SW2, SW3, and SW4, by connecting the switches SW2, SW3, and SW4 with subsequent switches SW5, SW6, and SW7, respectively, and by connecting the switches SW5, SW6, and SW7 with terminals Y1, Y2, and X, respectively.
It is assumed that the switch SW2 is connected in loop due to improper cable connection in the switch SW2 to generate a layer 2loop.
Description will be made of the case that the terminal X transmits a broadcast packet. When the terminal X transmits the broadcast packet, the broadcast packet arrives at the switch SW2 generating the L2loop via the switches SW7, SW4, and SW1.
The broadcast packet is sent out to the entire network (subnet) from the switch SW2 every time the packet goes around the loop. Since the loop circulation is performed at a wire speed, the broadcast packet is continuously sent out from the switch SW2 at the wire speed to the entire network (which is called a broadcast storm), and the terminals in the network fall into a heavy load situation.
When the broadcast packet is input into one of a plurality of ports of each switch, the switch stores a MAC address of a source terminal included in the broadcast packet and recognizes that the direction of the transmission terminal of the broadcast packet is the direction of the input port (hereinafter, this may be represented to as “learning an address”).
Therefore, due to the broadcast storm, some switches learn the address of the transmission terminal erroneously. That is, each switch recognizes that the source address of the broadcast packet is located in the direction of the L2loop occurrence location (switch SW2). Therefore, erroneous learning of the source terminal address happens in each switch on the path between the terminal X and the L2loop occurrence location.
Specifically, since the terminal X learns the address as if a virtual image of the terminal X transmitting the broadcast packet exists at the switch SW2 where the L2loop occurs, the address of the terminal X is learned erroneously by the switches SW7, SW4, SW1, and SW2 located on the path between the terminal X and the L2loop occurrence location in FIG. 1.
In this way, if a terminal transmits a broadcast packet when the L2loop occurs, the address of the terminal is learned erroneously by switches on the path from the terminal X to the location where the L2loop occurs.
The switches SW3, SW5, and SW6 do not learn erroneously merely because the packet reception directions are the same when the packet is transmitted from the actual terminal X and when the packet is transmitted from the L2loop occurrence location.
If the L2loop occurs and causes a network failure as described above, this must be searched and restored. In a method of performing such search, conventionally, if the L2loop occurs, the L2loop occurrence location has been narrowed down by manually taking out and putting in the cables of the layer 2 switch or by repeating a procedure for acquiring information about a connection status from a suspected switch. Therefore, a great deal of time (several hours to several days) and effort was needed until the L2loop occurrence location was discovered.
For example, Japanese Patent Application Laid-Open Publication No. 2001-197114 is known as a technology for detecting occurrence of the layer 2loop that causes a network failure. The technology described in Japanese Patent Application Laid-Open Publication No. 2001-197114 is a method of determining an endless loop of a frame from analysis of a reception frame to detect the L2loop.
Japanese Patent Application Laid-Open Publication No. 2005-33360 discloses an invention of detecting a loop in a network extended with the use of a bridge. In this invention, an address learning table is provided in the bridge and a loop is detected from a transition state of an entry port to the address learning table.
However, according to the Japanese Patent Application Laid-Open Publication No. 2001-197114, while it can be detected that the L2loop occurs somewhere in the network (subnet), the location of the occurrence of the L2loop cannot be identified in the subnet. According to Japanese Patent Application Laid-Open Publication No. 2005-33360, the application is limited to the particular form, that is, the application to the network extended with the use of a bridge.
Therefore, in the earlier application (Patent Application No. 2005-179294), the applicant filed an invention relating to a network failure detecting apparatus and a network failure detecting method that can detect the occurrence of the L2loop and the occurrence location thereof quickly and easily.
The invention shown in the aforementioned earlier application (Patent Application No. 2005-179294) of the applicant is a network failure detecting apparatus that is a first terminal of a plurality of terminals; each terminal detects a failure in a network constituted by connecting other terminals via at least one relay apparatus of a plurality of relay apparatuses; and the network failure detecting apparatus includes a communicating unit that acquires statistical information from a first relay apparatus of the plurality of relay apparatuses relating to data received by each of a plurality of ports of the first relay apparatus and a determining unit that determines based on the statistical information whether or not a loop causing a predetermined network failure is generated in the first relay apparatus or determines the direction from the first relay apparatus to another relay apparatus where the loop is generated.
That is, reception traffic information is acquired from a relay apparatus (switch, etc.) in a network where the L2loop is generated; the number of ports receiving a massive amount of packets is determined; and it is determined whether or not a loop is created at the relay apparatus or which port direction of the relay apparatus the loop is created.
The invention of the earlier application can identify the L2loop occurrence location. However, since the reception traffic information must be acquired a plurality of times from IFs of the relay apparatus to identify the loop location, it is problematic that a long time is needed to search a relay apparatus with many IFs. In some types of the relay apparatus, if a loop is created, the loop may be intermittently discontinued due to the influence of flow control, etc. Under such a situation, it is problematic that the loop location cannot be identified since less traffic exists in the loop direction.